package images_api

import (
	"github.com/gin-gonic/gin"
	"zswei.xyz/manager/global"
	"zswei.xyz/manager/models"
	"zswei.xyz/manager/models/res"
)

type ImageUpdateRequest struct {
	ID   uint   `json:"id" binding:"required" desc:"请选择文件ID"`
	Name string `json:"name" binding:"required" desc:"请输入文件名称"`
}

// ImageUpdateView 修改文件
//
//	@Tags			文件管理
//	@Summary		修改文件
//	@Description	修改文件接口
//	@Param			data	query	ImageUpdateRequest	true	"修改文件参数"
//	@Router			/v2/image/ImageUpdateView [put]
//	@Produce		json
//	@Success		200	{object}	res.Response{}
func (ImagesApi) ImageUpdateView(c *gin.Context) {
	var cr ImageUpdateRequest
	err := c.ShouldBindJSON(&cr)
	if err != nil {
		res.FailWithErrorDesc(err, &cr, c)
		return
	}

	var imageModel models.BannerModel
	err = global.DB.Take(&imageModel, cr.ID).Error
	if err != nil {
		res.FailWithDesc("文件不存在", c)
		return
	}

	err = global.DB.Model(&imageModel).Update("name", cr.Name).Error
	if err != nil {
		res.FailWithDesc(err.Error(), c)
		return
	}
	res.OkWith(c)
}
